const app = getApp()
// pages/biji/biji.js
Page({

  /**
  * 页面的初始数据
  */
  data: {
    text: '获取验证码', //按钮文字
    text2: '提交信息', //按钮文字
    currentTime: 61, //倒计时
    disabled: false, //按钮是否禁用
    phone: '' ,//获取到的手机栏中的值
    code: '' //获取到的手机栏中的值

  },

  //获取手机栏input中的值
  phoneInput: function (e) {
    this.setData({
      phone: e.detail.value
    })
  },

  //获取验证码input的值

  codeInput: function (e) {
    this.setData({
      code: e.detail.value
    })
  },

    

  //点击获取验证码按钮
  bindButtonTap: function () {
    var that = this;

    that.setData({
      disabled: true, //只要点击了按钮就让按钮禁用 （避免正常情况下多次触发定时器事件）
      color: '#ccc',
    })

    var phone = that.data.phone;
    var currentTime = that.data.currentTime //把手机号跟倒计时值变例成js值

    var warn = null; //warn为当手机号为空或格式不正确时提示用户的文字，默认为空

    if (phone == '') {
      warn = "号码不能为空";
    } else if (phone.trim().length != 11 || !/^1[3|4|5|6|7|8|9]\d{9}$/.test(phone)) {
      warn = "手机号格式不正确";
    } else {



      wx.request({
        url: app.globalData.serDomain + '/user/getVerifyCode',//自己的服务接口地址
        method: 'post',
        header: {
          'content-type': 'application/x-www-form-urlencoded'
        },
        data: { tel: phone },
        success: function (data) {
          
          wx.showToast({
            title: data.data.msg,
            icon: 'none',
            duration: 2000
          });


        },

        fail: function () {
          console.log('系统错误,请重试')
        }
      
      })

      //设置一分钟的倒计时
      var interval = setInterval(function () {
        currentTime--; //每执行一次让倒计时秒数减一
        that.setData({
          text: currentTime + 's', //按钮文字变成倒计时对应秒数

        })

        //如果当秒数小于等于0时 停止计时器 且按钮文字变成重新发送 且按钮变成可用状态 倒计时的秒数也要恢复成默认秒数 即让获取验证码的按钮恢复到初始化状态只改变按钮文字
        if (currentTime <= 0) {
          clearInterval(interval)
          that.setData({
            text: '重新发送',
            currentTime: 61,
            disabled: false,
            color: '#929fff'
          })
        }
      }, 100);

    };

    //判断 当提示错误信息文字不为空 即手机号输入有问题时提示用户错误信息 并且提示完之后一定要让按钮为可用状态 因为点击按钮时设置了只要点击了按钮就让按钮禁用的情况
    if (warn != null) {
      wx.showModal({
        title: '提示',
        content: warn
      })

      that.setData({
        disabled: false,
        color: '#929fff'
      })
      return;

    };
  },




  //提交电话号码和验证码信息
  submitInfo: function () {

    var that = this
    //json对象转为字符串
    var wxUser = JSON.stringify(app.globalData.wxUser)
    var phone = that.data.phone;
    var code = that.data.code;
    var warn = null;
  
    //判断手机号
    if (phone == '') {
      warn = "号码不能为空";
    } else if (phone.trim().length != 11 || !/^1[3|4|5|6|7|8|9]\d{9}$/.test(phone)) {
      warn = "手机号格式不正确";
    }

    //判断验证码
    if(code==''){
      warn='验证码不能为空';
    } else if (code.trim().length !=6){
      warn = '验证码格式不正确';
    }

    //验证不通过时展示提示
    if (warn != null) {
      wx.showModal({
        title: '提示',
        content: warn
      })

      that.setData({
        disabled: false,
        color: '#929fff'
      })
      return;

    };


    wx.request({
      url: app.globalData.serDomain + '/user/bindUser',//自己的服务接口地址
      method: 'post',
      header: {
        'content-type': 'application/x-www-form-urlencoded'
      },
      data: { tel: phone, dxyzm: code, wxUser:wxUser },
      success: function (data) {


        if(data.data.err==0){
              
     
          var userInfo = data.data.userInfo
          // console.log(userInfo);
          //设置当前页面Data
       
          //设置当前app生命周期的globalData
          app.globalData.userInfo = userInfo

          //设置本地缓存storage

          wx.setStorage({ key: "userInfo", data: userInfo })
       
          //没有查询到用户信息跳转到绑定页面
          wx.switchTab({
            url: '../personal/personal',
          })

        

        }else{
          wx.showToast({
            title: data.data.msg,
            icon: 'none',
            duration: 2000
          });

        }


       


      },

      fail: function () {
        console.log('系统错误,请重试')
      }

    })
   
    

  },








  /**
  * 生命周期函数--监听页面加载
  */
  onLoad: function (options) {
    console.log(app.globalData.wxUser)
  },

     
})
